import TabsView from '@/layouts/tabs/TabsView'
import BlankView from '@/layouts/BlankView'
import PageView from '@/layouts/PageView'

const dev = [
  {
    path: 'form',
    name: '表单页',
    meta: {
      icon: 'form',
    },
    component: PageView,
    children: [
      {
        path: 'basic',
        name: '基础表单',
        component: () => import('@/pages/form/basic'),
      },
      {
        path: 'step',
        name: '分步表单',
        component: () => import('@/pages/form/step'),
      },
      {
        path: 'advance',
        name: '高级表单',
        component: () => import('@/pages/form/advance'),
      }
    ]
  },
  {
    path: 'list',
    name: '列表页',
    meta: {
      icon: 'table'
    },
    component: PageView,
    children: [
      {
        path: 'query',
        name: '查询表格',
        meta: {
          authority: 'queryForm',
        },
        component: () => import('@/pages/list/QueryList'),
      },
      {
        path: 'primary',
        name: '标准列表',
        component: () => import('@/pages/list/StandardList'),
      },
      {
        path: 'card',
        name: '卡片列表',
        component: () => import('@/pages/list/CardList'),
      },
      {
        path: 'search',
        name: '搜索列表',
        component: () => import('@/pages/list/search/SearchLayout'),
        children: [
          {
            path: 'article',
            name: '文章',
            component: () => import('@/pages/list/search/ArticleList'),
          },
          {
            path: 'application',
            name: '应用',
            component: () => import('@/pages/list/search/ApplicationList'),
          },
          {
            path: 'project',
            name: '项目',
            component: () => import('@/pages/list/search/ProjectList'),
          }
        ]
      }
    ]
  },
  {
    path: 'details',
    name: '详情页',
    meta: {
      icon: 'profile'
    },
    component: BlankView,
    children: [
      {
        path: 'basic',
        name: '基础详情页',
        component: () => import('@/pages/detail/BasicDetail')
      },
      {
        path: 'advance',
        name: '高级详情页',
        component: () => import('@/pages/detail/AdvancedDetail')
      }
    ]
  },
  {
    path: 'result',
    name: '结果页',
    meta: {
      icon: 'check-circle-o',
    },
    component: PageView,
    children: [
      {
        path: 'success',
        name: '成功',
        component: () => import('@/pages/result/Success')
      },
      {
        path: 'error',
        name: '失败',
        component: () => import('@/pages/result/Error')
      }
    ]
  },
  {
    path: 'exception',
    name: '异常页',
    meta: {
      icon: 'warning',
    },
    component: BlankView,
    children: [
      {
        path: '404',
        name: 'Exp404',
        component: () => import('@/pages/exception/404')
      },
      {
        path: '403',
        name: 'Exp403',
        component: () => import('@/pages/exception/403')
      },
      {
        path: '500',
        name: 'Exp500',
        component: () => import('@/pages/exception/500')
      }
    ]
  },
  {
    path: 'components',
    name: '小组件',
    meta: {
      icon: 'appstore-o'
    },
    component: PageView,
    children: [
      {
        path: 'taskCard',
        name: '任务卡片',
        component: () => import('@/pages/components/TaskCard')
      },
      {
        path: 'palette',
        name: '颜色复选框',
        component: () => import('@/pages/components/Palette')
      }
    ]
  },
  {
    name: '验权表单',
    path: 'auth/form',
    meta: {
      icon: 'file-excel',
      authority: {
        permission: 'form'
      }
    },
    component: () => import('@/pages/form/basic')
  }
]
// 路由配置
const options = {
  routes: [
    {
      path: '/login',
      name: '登录页',
      component: () => import('@/pages/login')
    },
    {
      path: '*',
      name: '404',
      component: () => import('@/pages/exception/404'),
    },
    {
      path: '/403',
      name: '403',
      component: () => import('@/pages/exception/403'),
    },

    {
      path: '/',
      name: '首页',
      component: TabsView,
      redirect: '/login',
      children: [

        {
          path: "productManage" ,
          name: "产品管理",
          meta: {
            icon: 'dashboard'
          },
          component: BlankView,
          children: [
            {
              path:"category",
              name:"分类管理",
              component: () => import("@/pages/shop/category/category")
            },
            {
              meta:{
                  invisible: true,
              },
              path: "addCategory",
              name:"新增分类",
              component: () => import("@/pages/shop/category/edit_category")
            }
          ]
        },
        {
          path: "systemManage" ,
          name: "系统管理",
          meta: {
            icon: 'dashboard'
          },
          component: BlankView,
          children:[
            {
              path:"system",
              name:"系统管理",
              component: () => import("@/pages/system/system")
            },
            {
              path:"user",
              name:"用户管理",
              component: () => import("@/pages/system/user")
            },
            {
              path:"role",
              name:"角色管理",
              component: () => import("@/pages/system/role")
            },

            {
              path:"storage",
              name:"归档配置",
              component: () => import("@/pages/system/storage"),
            },
            {
              path:"dbbackup",
              name:"数据库备份",
              component: () => import("@/pages/system/dbbackup")
            },
            {
              path:"dbrestore",
              name:"数据库还原",
              component: () => import("@/pages/system/dbrestore")
            },
            {
              path: "systemlog",
              name:"系统日志",
              component: () => import("@/pages/system/system_log")
            },

            {
              path: "storagelog",
              name:"归档日志",
              component: () => import("@/pages/system/storage_log")
            }
          ]
        },
        {
          path: 'dashboard',
          name: 'Dashboard',
          meta: {
            icon: 'dashboard'
          },
          component: BlankView,
          children: [
            {
              path: 'workplace',
              name: '工作台',
              component: () => import('@/pages/dashboard/workplace'),
            },
            {
              path: 'analysis',
              name: '分析页',
              component: () => import('@/pages/dashboard/analysis'),
            }
          ]
        },
          ...(function () {
            return location.href.indexOf("localhost") > -1 ? dev : []
          })()
      ]
    },
  ]
}

export default options
